{
  "mixins": [ "composables/private/use-model-toggle", "composables/private/use-portal", "composables/private/use-transition" ],

  "meta": {
    "docsUrl": "https://v2.quasar.dev/vue-components/tooltip"
  },

  "props": {
    "max-height": {
      "extends": "size",
      "type": [ "String", "null" ],
      "default": null,
      "desc": "The maximum height of the Tooltip; Size in CSS units, including unit name",
      "category": "content"
    },

    "max-width": {
      "extends": "size",
      "type": [ "String", "null" ],
      "default": null,
      "desc": "The maximum width of the Tooltip; Size in CSS units, including unit name",
      "category": "content"
    },

    "transition-show": {
      "default": "jump-down"
    },

    "transition-hide": {
      "default": "jump-up"
    },

    "anchor": {
      "type": "String",
      "desc": "Two values setting the starting position or anchor point of the Tooltip relative to its target",
      "values": [
        "top left", "top middle", "top right", "top start", "top end",
        "center left", "center middle", "center right", "center start", "center end",
        "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
      ],
      "default": "bottom middle",
      "category": "position"
    },

    "self": {
      "type": "String",
      "desc": "Two values setting the Tooltip's own position relative to its target",
      "values": [
        "top left", "top middle", "top right", "top start", "top end",
        "center left", "center middle", "center right", "center start", "center end",
        "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
      ],
      "default": "top middle",
      "category": "position"
    },

    "offset": {
      "type": "Array",
      "desc": "An array of two numbers to offset the Tooltip horizontally and vertically in pixels",
      "default": "[14, 14]",
      "examples": [ "[8, 8]", "[5, 10]" ],
      "category": "position"
    },

    "scroll-target": {
      "extends": "scroll-target"
    },

    "target": {
      "type": [ "Boolean", "String" ],
      "desc": "Configure a target element to trigger Tooltip toggle; 'true' means it enables the parent DOM element, 'false' means it disables attaching events to any DOM elements; By using a String (CSS selector) it attaches the events to the specified DOM element (if it exists)",
      "default": true,
      "values": [ "(Boolean) true", "(Boolean) false", "(CSS selector)" ],
      "examples": [
        ":target=\"false\"",
        "target=\".my-parent\""
      ],
      "category": "behavior"
    },

    "no-parent-event": {
      "type": "Boolean",
      "desc": "Skips attaching events to the target DOM element (that trigger the element to get shown)",
      "category": "behavior"
    },

    "delay": {
      "type": "Number",
      "desc": "Configure Tooltip to appear with delay",
      "default": 0,
      "category": "behavior"
    },

    "hide-delay": {
      "type": "Number",
      "desc": "Configure Tooltip to disappear with delay",
      "default": 0,
      "category": "behavior"
    },

    "persistent": {
      "type": "Boolean",
      "desc": "Prevents Tooltip from auto-closing when app's route changes",
      "category": "behavior"
    }
  },

  "slots": {
    "default": {
      "extends": "default"
    }
  },

  "methods": {
    "updatePosition": {
      "desc": "There are some custom scenarios for which Quasar cannot automatically reposition the tooltip without significant performance drawbacks so the optimal solution is for you to call this method when you need it"
    }
  }
}
